﻿
namespace TFSChangeLog.Operations.Services
{

    /// <summary>Summary description for <see cref="LineDiff"/> class.</summary>
    public class LineDiff
    {
        /// <summary>Summary description for class level field of type <c>string</c>.</summary>
        private string line;

        /// <summary>Summary description for <c>ChangedFlag</c> enum.</summary>
        public enum ChangedFlag
        {
            /// <summary>Summary description for <c>original</c> enumeration sub-item.</summary>
            original, added, removed


        };

        /// <summary>Initializes a new instance of the <see cref="LineDiff"/> class.</summary>
        public LineDiff()
        {
        }

        /// <summary>Initializes a new instance of the <see cref="LineDiff"/> class.</summary>
        /// <param name="line">TODO: Summary description for <c>line</c> parameter of type <c>string</c>.</param>
        /// <param name="flag">TODO: Summary description for <c>flag</c> parameter of type <c>TFSChangeLog.Operations.Services.LineDiff.ChangedFlag</c>.</param>
        public LineDiff(string line, ChangedFlag flag)
        {
            this.Line = line;
            this.Flag = flag;
        }

        /// <summary>Summary description for class level field of type <c>TFSChangeLog.Operations.Services.LineDiff.ChangedFlag</c>.</summary>
        private ChangedFlag flag;

        /// <summary>Gets or sets the value for Flag.</summary>
        public ChangedFlag Flag
        {
            get { return this.flag; }
            set { this.flag = value; }
        }

        /// <summary>Gets or sets the value for Line.</summary>
        public string Line
        {
            get { return this.line; }
            set { this.line = value; }
        }
    }
}
